package infra.dao.user;

import java.util.LinkedList;
import models.User;

public interface IUserDAO {
    
    public void createUser(User user);

    public User retrieveUserByIp(String ip);
    public User retrieveUserByLogin(String login);

    public void updateUserByIp(String ip, User updatedUser);
    public void updateUserByLogin(String login, User updatedUser);
    
    public void deleteUserByIp(String ip);
    public void deleteUserByLogin(String login);
    
    public boolean ipUserExists(String ip);
    public boolean loginUserExists(String login);

    public LinkedList<User> getAll();    
}
